Welkom terug.
Dat laatste project was een beetje overweldigend omdat we een heleboel bibliotheken en veel datavisualisaties gebruikten die heel specifiek zijn
voor een bibliotheek, maar we hebben het onderwerp van het trainen van de gegevens en het maken van modellen
niet echt aangeroerd.
Dus in dit project gaan we wat machine learning doen.
Het wordt heel leuk.
Maar ik wil je een waarschuwing geven.
Dit is slechts een voorproefje van hoe machine learning is.
Als dit je eerste keer is, lijkt het misschien een beetje overweldigend.
Maar zoals met alles, draait het allemaal om oefening en herhaling.
Maar hopelijk zult u aan het einde ervan het proces van zes stappen zien en zien hoe het echt werkt.
En aan het eind van de dag zul je je ook realiseren dat het misschien niet zo ingewikkeld is als
je aanvankelijk dacht.
Dus laten we beginnen.
Het eerste dat we gaan doen, is een nieuwe notebook maken met Python drie.
Nu gaan we deze keer een andere dataset en een bekende gebruiken als het gaat om machine
learning.
Het wordt de irisdataset voor de irisbloem genoemd.
Dus als ik Iris Flower typ.
Het is een dataset met al deze informatie over de irisbloem die eigenlijk verschillende soorten heeft.
Dus we gaan een machine learning-model maken dat typen van de irisplant kan detecteren.
Nu, gelukkig voor ons.
We hebben heel, heel gemakkelijk toegang tot deze gegevens met Saikat, leer, Cycad, leer, als je je herinnert, was
een andere bibliotheek die echt heel krachtig is om ons te helpen met machine learning.
Dus alles wat we hoeven te doen is zeggen van Saikat, leer punt.
Datasets en Cycad Learn worden vooraf gebouwd met een aantal goede datasets die u zelf kunt verkennen.
En we gaan gewoon de.
Iris dataset of kleine letter I.
Gewoon zo, zodat als ik dat doe, Iris gelijk is aan laden, punt, iris, gewoon zo en ik klik op uitvoeren.
Oh, en dit zou een underscore moeten zijn.
Dus we hebben nu de gegevens geladen.
En als we teruggaan naar onze Reppel, we hebben de gegevens geïmporteerd, we hoeven de gegevens niet op te schonen.
Dat leerden we in het vorige project.
Maar omdat ik kon leren dat deze datasets vooraf zijn gebouwd, kunnen we aannemen dat het schone data zijn die we in onze
modellen kunnen gebruiken.
De volgende stap is om de gegevens te splitsen in een trainingsset en een testset.
Maar om dat te doen, kunnen we dit concept van X en Y en machine learning gebruiken.
Dus X deze hoofdletter X betekent meestal de input die we willen geven aan ons machine learning-model.
Dus in ons geval zullen we zeggen dat irispuntgegevens onze invoer zullen zijn.
Dat zijn dus de gegevens die we krijgen.
Dus laten we eens kijken wat dat is.
Laten we rennen.
Dat zijn de gegevens die u ziet.
Dat zijn slechts enkele enorme arrays.
En waarom zal het doelwit zijn, dus als ik niet richt en ik klik op uitvoeren?
Je zult zien dat dit het doel is.
Wat dit betekent, is dat we een functie willen vinden of maken die een X nodig heeft, wat onze gegevens zullen zijn.
En geeft de Y af, wat het doel is, dat is het antwoord nu in ons geval, dit zijn de antwoorden nul
één en twee.
Maar als ik Google Iris dataset.
En ik ga hier naar de Wikipedia-pagina.
Je zult zien dat er drie soorten EIRIS zijn, de Sentosa, very Cicala en Virginica, en elk van
deze wordt vertegenwoordigd door nul één of twee.
Dus als we naar onze dataset kijken.
Dit doel.
Zijn de soorten van die drie Ierse bloemsoorten?
Dus het doel in dit geval dat vooraf is ingesteld met de Cycad Learn-bibliotheek, is dat dit de gegevens van de afbeeldingen
zijn.
Dus nogmaals, als ik dit verwijder en op uitvoeren druk, is dit de afbeelding.
Dus elke lijst is.
Een stukje gegevens dat door sommige parameters de irisbloem vertegenwoordigt.
En dan hebben we het doel, wat is het antwoord als we deze gegevens invoeren, wat is de output?
Welke van de drie bloemen is het?
Als ik nu naar Kagle ga.
En ik typ eigenlijk in de iris.
Gegevensset.
Je kunt zien dat de kolommen zijn terwijl de lengte van het pedaal, de lengte en dan de soortnaam.
Dus je kunt hier zien dat dit de kolommen zijn waarop het test en je kunt
zien dat dit de getallen zijn die we in die array krijgen, en elk correspondeert met een ander type irisbloem.
Dus laten we daar op terugkomen, ik ga zeggen dat Capital X onze data, onze input zal zijn.
En waarom zullen kleine letters, waarom, en dit is slechts een standaard, ons doel zijn.
Ten slotte willen we eigenlijk de functienamen krijgen, dus elk item in de lijst hier is een functie.
Onthoud, dat is wat.
Deze kolommen zijn deze kolommen met de lengte van het pedaal en het septum.
Dus we kunnen dat opslaan door simpelweg functie te zeggen.
Naam.
Heeft de IRS-punt functienamen?
Nogmaals, die vooraf is gebouwd met de Ierse dataset, en dan zullen de doelnamen de Ierse
puntdoelnamen zijn.
Nogmaals, als ik dit uitvoer.
Laten we eerst de functienamen doen.
Daar zijn de kolommen, en als ik doelnamen doe.
Je ziet dat dit de drie opties zijn.
Dus tot nu toe hebben we de gegevens geïmporteerd, we hoefden de gegevens niet op te schonen, we hebben de gegevens
nog niet echt gesplitst, maar we beginnen in ieder geval onze gegevens te begrijpen en misschien wat het bevat.
Dus als we de gegevens eenmaal hebben begrepen en weten dat we deze informatie hebben, kunnen we nu beginnen met het splitsen van
de gegevens in een training en dataset, omdat we op dit moment leren onder toezicht omdat deze
goed zijn gelabeld.
We hebben alle gegevens die we nodig hebben en we hebben ook de antwoorden die we nodig hebben om ons model te testen.
Trouwens, voordat ik je laat zien hoe je de gegevens kunt splitsen.
Wat denk je?
Het type.
Van X is.
Kan je raden?
Het is een numpty array, weet je nog dat bibliotheek non-pay die ik je vertelde ons in staat stelt om multidimensionale arrays te
gebruiken?
Welnu, onder de motorkap is deze dataset een numpty array.
Het is iets rijker aan functies dan alleen een python-lijst.
Hoe dan ook, laten we beginnen met het splitsen van onze gegevens.
Dus wat we hier willen doen, is vanuit de Cycad Learn Library, ik wil de modelselectie pakken.
En hier gaan we importeren.
De treintest splitste zich.
Nu, wat is dat, laten we Googlen en erachter komen.
Dus nogmaals, als ik naar de bibliotheekdocumentatie ga, kun je zien dat de trein is gesplitst, eenvoudig
de array of matrixen splitst in willekeurige trein- en testsubsets.
Dus beslist willekeurig voor ons hoe het de gegevens gaat splitsen in de trainingsgegevens en de
testgegevens.
Dus nu kunnen we het op een interessante manier gebruiken, we kunnen gewoon zeggen dat X de trainingsdataset is, de X.
Testdataset de Y-treindataset en vervolgens de Y-testdataset.
En nogmaals, we kunnen dat gewoon aan variabelen toewijzen met behulp van de trein.
Test split-functie die we importeren.
En geef het de X, de Y en wat verschillende variabelen, dus bijvoorbeeld hier, als je het kunt zien.
We hebben dingen zoals testgrootte of willekeurige staat of willekeurige variabelen die we willen, nogmaals, je kunt
dit zelf lezen.
Laten we in ons geval zeggen dat de testgrootte nulpunt zal zijn.
Laten we eens kijken wat voor soort gegevens we nu hebben.
Dus als ik X de treingegevens print en we Dot Shapir kunnen doen.
En we zullen ook de.
Reageerbuis.
Als ik dit uitvoer.
Het retourneert wat we een dimensionaliteit van de array noemen.
Dus dat is hoeveel rijen en kolommen.
Het heeft dus vier kolommen en 90 rijen, dus onze treingegevens hebben Niros en onze taaktestgegevens hebben 60 rijen.
Als ik de Tetsuya's hier twee komma vijf verander en ik klik op uitvoeren, zie je dat ik
nu de testgrootte verdeel over 50 procent voor trein 50 voor test, zodat we dingen echt kunnen veranderen en verschillende dingen kunnen
proberen.
En manipuleren van de trein en testgegevens zegt.
In het ideale geval willen we echter meer trainingsgegevens hebben dan tests, alleen maar omdat, onthoud, hoe
meer gegevens we hebben, hoe beter ons model zal worden.
En dit zal hetzelfde zijn voor de waarom-trein en de waarom-testvariabelen.
Gefeliciteerd, we hebben zojuist de gegevens opgesplitst in trainingsset en testset, we hebben nu een aantal spannende stappen voor de boeg,
zoals het maken van het model.
Laten we een pauze nemen en leren hoe je dat kunt doen in de volgende video.